﻿using System.Configuration;
using System.Collections.Specialized;

namespace BAC.Excel.Engine
{
    public class ExcelConstants
    {
        private static string strAttributeTypeHeader;
        private static string strNameHeader;
        private static string strDisplayNameHeader;
        private static string strRequiredLevelHeader;
        private static string strDescriptionHeader;
        private static string strAuditingHeader;
        private static string strFieldSecurityHeader;
        private static string strDefaultValueHeader;
        private static string strFormatHeader;
        private static string strMaximumLengthHeader;
        private static string strMaximumValueHeader;
        private static string strMinimumValueHeader;
        private static string strPrecisionHeader;
        private static string strIMEModeHeader;
        private static string strOptionsHeader;
        private static string strLookupTypeHeader;
        private static string strRelationshipNameHeader;
        private static string strStatusHeader;


        //Public Properties 
        public static string NameHeader
        { get { return strNameHeader; } }
        public static string DisplayNameHeader
        { get { return strDisplayNameHeader; } }
        public static string RequiredLevelHeader
        { get { return strRequiredLevelHeader; } }
        public static string DescriptionHeader
        { get { return strDescriptionHeader; } }
        public static string AuditingHeader
        { get { return strAuditingHeader; } }
        public static string FieldSecurityHeader
        { get { return strFieldSecurityHeader; } }
        public static string DefaultValueHeader
        { get { return strDefaultValueHeader; } }
        public static string FormatHeader
        { get { return strFormatHeader; } }
        public static string MaximumLengthHeader
        { get { return strMaximumLengthHeader; } }
        public static string MaximumValueHeader
        { get { return strMaximumValueHeader; } }
        public static string MinimumValueHeader
        { get { return strMinimumValueHeader; } }
        public static string PrecisionHeader
        { get { return strPrecisionHeader; } }
        public static string IMEModeHeader
        { get { return strIMEModeHeader; } }
        public static string OptionsHeader
        { get { return strOptionsHeader; } }
        public static string LookupTypeHeader
        { get { return strLookupTypeHeader; } }
        public static string RelationshipNameHeader
        { get { return strRelationshipNameHeader; } }
        public static string AttributeTypeHeader
        { get { return strAttributeTypeHeader; } }
        public static string StatusHeader
        { get { return strStatusHeader; } }

        public ExcelConstants()
        {
            NameValueCollection ExcelConstants = ConfigurationManager.GetSection("ExcelSettings/ExcelConstants") as NameValueCollection;
            strNameHeader = ExcelConstants["NameHeader"];
            strDisplayNameHeader = ExcelConstants["DisplayNameHeader"];
            strRequiredLevelHeader = ExcelConstants["RequiredLevelHeader"];
            strDescriptionHeader = ExcelConstants["DescriptionHeader"];
            strAuditingHeader = ExcelConstants["AuditingHeader"];
            strFieldSecurityHeader = ExcelConstants["FieldSecurityHeader"];
            strDefaultValueHeader = ExcelConstants["DefaultValueHeader"];
            strFormatHeader = ExcelConstants["FormatHeader"];
            strMaximumLengthHeader = ExcelConstants["MaximumLengthHeader"];
            strMaximumValueHeader = ExcelConstants["MaximumValueHeader"];
            strMinimumValueHeader = ExcelConstants["MinimumValueHeader"];
            strPrecisionHeader = ExcelConstants["PrecisionHeader"];
            strIMEModeHeader = ExcelConstants["IMEModeHeader"];
            strOptionsHeader = ExcelConstants["OptionsHeader"];
            strLookupTypeHeader = ExcelConstants["LookupTypeHeader"];
            strRelationshipNameHeader = ExcelConstants["RelationshipNameHeader"];
            strAttributeTypeHeader = ExcelConstants["AttributeTypeHeader"];
            strStatusHeader = ExcelConstants["StatusHeader"];
        }

    }
}
